#ifndef DialogManager_h
#define DialogManager_h

#include <string>
#include <osg/Geode>
#include <osg/Material>
#include <osg/BlendFunc>
#include <osg/Depth>
#include <osg/PolygonOffset>
#include <osgText/Text>

#include "Dialog.h"
#include "Singleton.h"

class Engine;

class DialogManager : public Singleton<DialogManager> {

friend class Singleton<DialogManager>;

protected:
	DialogManager();
	virtual ~DialogManager(){clear();}

public:
	void init();

	///brief clear the whole Engine
	void clear();

	void displayText(std::string text);
	void removeText();

private: 
	osg::ref_ptr<osg::Geode> m_pgeode;
	osg::ref_ptr<osgText::Text> m_ptext;
	osg::ref_ptr<osg::Geometry> m_pbox;

};

#endif // DialogManager_h
